when encountering non-UTF-8 file names, alert the user with g_message()
authorTim Janik <timj@gtk.org>
Thu, 28 Mar 2002 20:08:25 +0000 (20:08 +0000)
committerTim Janik <timj@src.gnome.org>
Thu, 28 Mar 2002 20:08:25 +0000 (20:08 +0000)
Thu Mar 28 21:11:04 2002  Tim Janik  <timj@gtk.org>

        * gtk/gtkfilesel.c (open_new_dir): when encountering non-UTF-8 file
        names, alert the user with g_message() instead of g_warning() and
        put out the actual conversion error.

ChangeLog
ChangeLog.pre-2-10
ChangeLog.pre-2-2
ChangeLog.pre-2-4
ChangeLog.pre-2-6
ChangeLog.pre-2-8
gtk/gtkfilesel.c

index e9e0c9dba3b580db7a4cbfa516d9a880d3ba26ed..b7345e1badf36be83f12cabcf25ca81c46aa1cb8 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+Thu Mar 28 21:11:04 2002  Tim Janik  <timj@gtk.org>
+
+       * gtk/gtkfilesel.c (open_new_dir): when encountering non-UTF-8 file
+       names, alert the user with g_message() instead of g_warning() and
+       put out the actual conversion error.
+
 2002-03-28  Dave Camp  <dave@ximian.com>
 
        * gtk/gtktreeview.c (install_scroll_sync_handler): Don't install
index e9e0c9dba3b580db7a4cbfa516d9a880d3ba26ed..b7345e1badf36be83f12cabcf25ca81c46aa1cb8 100644 (file)
@@ -1,3 +1,9 @@
+Thu Mar 28 21:11:04 2002  Tim Janik  <timj@gtk.org>
+
+       * gtk/gtkfilesel.c (open_new_dir): when encountering non-UTF-8 file
+       names, alert the user with g_message() instead of g_warning() and
+       put out the actual conversion error.
+
 2002-03-28  Dave Camp  <dave@ximian.com>
 
        * gtk/gtktreeview.c (install_scroll_sync_handler): Don't install
index e9e0c9dba3b580db7a4cbfa516d9a880d3ba26ed..b7345e1badf36be83f12cabcf25ca81c46aa1cb8 100644 (file)
@@ -1,3 +1,9 @@
+Thu Mar 28 21:11:04 2002  Tim Janik  <timj@gtk.org>
+
+       * gtk/gtkfilesel.c (open_new_dir): when encountering non-UTF-8 file
+       names, alert the user with g_message() instead of g_warning() and
+       put out the actual conversion error.
+
 2002-03-28  Dave Camp  <dave@ximian.com>
 
        * gtk/gtktreeview.c (install_scroll_sync_handler): Don't install
index e9e0c9dba3b580db7a4cbfa516d9a880d3ba26ed..b7345e1badf36be83f12cabcf25ca81c46aa1cb8 100644 (file)
@@ -1,3 +1,9 @@
+Thu Mar 28 21:11:04 2002  Tim Janik  <timj@gtk.org>
+
+       * gtk/gtkfilesel.c (open_new_dir): when encountering non-UTF-8 file
+       names, alert the user with g_message() instead of g_warning() and
+       put out the actual conversion error.
+
 2002-03-28  Dave Camp  <dave@ximian.com>
 
        * gtk/gtktreeview.c (install_scroll_sync_handler): Don't install
index e9e0c9dba3b580db7a4cbfa516d9a880d3ba26ed..b7345e1badf36be83f12cabcf25ca81c46aa1cb8 100644 (file)
@@ -1,3 +1,9 @@
+Thu Mar 28 21:11:04 2002  Tim Janik  <timj@gtk.org>
+
+       * gtk/gtkfilesel.c (open_new_dir): when encountering non-UTF-8 file
+       names, alert the user with g_message() instead of g_warning() and
+       put out the actual conversion error.
+
 2002-03-28  Dave Camp  <dave@ximian.com>
 
        * gtk/gtktreeview.c (install_scroll_sync_handler): Don't install
index e9e0c9dba3b580db7a4cbfa516d9a880d3ba26ed..b7345e1badf36be83f12cabcf25ca81c46aa1cb8 100644 (file)
@@ -1,3 +1,9 @@
+Thu Mar 28 21:11:04 2002  Tim Janik  <timj@gtk.org>
+
+       * gtk/gtkfilesel.c (open_new_dir): when encountering non-UTF-8 file
+       names, alert the user with g_message() instead of g_warning() and
+       put out the actual conversion error.
+
 2002-03-28  Dave Camp  <dave@ximian.com>
 
        * gtk/gtktreeview.c (install_scroll_sync_handler): Don't install
index b6cfc5f10504896d8a1e3539749dcfefc04bf80c..9b8594273084fc84e26b50673e2f2e3f6e33177b 100644 (file)
@@ -2964,6 +2964,8 @@ open_new_dir (gchar       *dir_name,
 
   for (i = 0; i < entry_count; i += 1)
     {
+      GError *error = NULL;
+
       dirent = g_dir_read_name (directory);
 
       if (!dirent)
@@ -2974,14 +2976,19 @@ open_new_dir (gchar       *dir_name,
          return NULL;
        }
 
-      sent->entries[n_entries].entry_name = g_filename_to_utf8 (dirent, -1, NULL, NULL, NULL);
+      sent->entries[n_entries].entry_name = g_filename_to_utf8 (dirent, -1, NULL, NULL, &error);
       if (sent->entries[n_entries].entry_name == NULL
          || !g_utf8_validate (sent->entries[n_entries].entry_name, -1, NULL))
        {
-         g_warning (_("The filename %s couldn't be converted to UTF-8. Try setting the environment variable G_BROKEN_FILENAMES."), dirent);
+         g_message (_("The filename \"%s\" couldn't be converted to UTF-8 "
+                      "(try setting the environment variable G_BROKEN_FILENAMES): %s"),
+                    dirent,
+                    error->message ? error->message : _("Invalid Utf-8"));
+         g_clear_error (&error);
          continue;
        }
-
+      g_clear_error (&error);
+      
       g_string_assign (path, sys_dir_name);
       if (path->str[path->len-1] != G_DIR_SEPARATOR)
        {